package com.hzncc.flowable_diboot.excel.model;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.lang.Double;
import java.math.BigDecimal;
import java.util.List;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.HeadStyle;
import com.alibaba.excel.enums.poi.FillPatternTypeEnum;
import com.diboot.core.util.D;
import com.diboot.core.util.V;
import com.diboot.file.excel.BaseExcelModel;
import com.diboot.file.excel.annotation.ExcelBindDict;
import com.diboot.file.excel.annotation.ExcelBindField;
import com.diboot.file.excel.annotation.ExcelOption;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.diboot.iam.entity.IamOrg;
import com.diboot.iam.entity.IamPosition;
import com.diboot.iam.entity.IamRole;
import com.diboot.iam.entity.IamUser;

import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;
import jakarta.validation.constraints.NotNull;
import com.hzncc.flowable_diboot.entity.contractmanage.ForeignCollection;

/**
* 收汇管理 导入model定义
*
* @author MyName
* @version 1.0
* @date 2025-01-07
 * Copyright © MyCorp
*/
@Getter
@Setter
@ExcelIgnoreUnannotated
@HeadStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 1)
public class ForeignCollectionImportModel extends BaseExcelModel {
    /**
    * 收汇时间
    */
    @DateTimeFormat(D.FORMAT_DATE_Y4MD)
    @JsonFormat(pattern = D.FORMAT_DATE_Y4MD)
    @ExcelProperty(value = "收汇时间")
    private LocalDate collectionTime;
    /**
    * 收汇金额
    */
    @ExcelProperty(value = "收汇金额")
    private BigDecimal collectionAmount;
    /**
    * 单位
    */
    @Length(max=100, message="单位长度应小于100")
    @ExcelProperty(value = "单位")
    private String company;
    /**
    * 收汇附件
    */
    @Length(max=100, message="收汇附件长度应小于100")
    @ExcelProperty(value = "收汇附件")
    private String collectionFile;
    /**
    * 币种
    */
    @ExcelOption(dict = "currency")
    @ExcelBindDict(type = "currency")
    @ExcelProperty(value = "币种")
    private String currency;
    /**
    * 汇率
    */
    @Length(max=100, message="汇率长度应小于100")
    @ExcelProperty(value = "汇率")
    private String exchangeRate;
    /**
    * 备注
    */
    @Length(max=100, message="备注长度应小于100")
    @ExcelProperty(value = "备注")
    private String remark;

}